草庐IT

Java HotSpot 枚举开销

全部标签

java - 我可以在 Java 中创建一个抽象枚举吗?

下面是一个有效的枚举声明。publicenumSomeEnumClass{ONE(1),TWO(2),THREE(3);privateintsomeInt;publicSomeEnumClass(intsomeInt){this.someInt=someInt;}}但是我可以用枚举类型覆盖抽象类吗?SomeEnumClass.javapublicabstractenumSomeEnumClass{privateintsomeInt;publicSomeEnumClass(intsomeInt){this.someInt=someInt;}}OverridingEnumClass.jav

基于 Java 枚举的状态机 (FSM) : Passing in events

我在我的Android应用程序中使用了几个基于枚举的状态机。虽然这些工作得很好,但我正在寻找的是关于如何优雅地接收事件的建议,通常来自注册的回调或事件总线消息,进入当前Activity状态。在许多关于基于枚举的FSM的博客和教程中,大多数都提供了使用数据的状态机(例如解析器)的示例,而不是展示如何从事件驱动这些FSM。我使用的典型状态机具有这种形式:privateStatemState;publicenumState{SOME_STATE{init(){...}process(){...}},ANOTHER_STATE{init(){...}process(){...}}}...在我的

基于 Java 枚举的状态机 (FSM) : Passing in events

我在我的Android应用程序中使用了几个基于枚举的状态机。虽然这些工作得很好,但我正在寻找的是关于如何优雅地接收事件的建议,通常来自注册的回调或事件总线消息,进入当前Activity状态。在许多关于基于枚举的FSM的博客和教程中,大多数都提供了使用数据的状态机(例如解析器)的示例,而不是展示如何从事件驱动这些FSM。我使用的典型状态机具有这种形式:privateStatemState;publicenumState{SOME_STATE{init(){...}process(){...}},ANOTHER_STATE{init(){...}process(){...}}}...在我的

java - 获取枚举类型变量的注释

我有一些Enum的非null变量(例如en1)类型。问题是:如何获取en1变量引用的枚举常量相关的注解? 最佳答案 试试这个(java反射):Stringfield=En.AAA.name();En.class.getField(field).getAnnotations();它应该为您提供来自AAA的注释。编辑:正如作者所说:en1.getClass().getField(((Enum)en1).name()).getAnnotations();为他工作:) 关于java-获取枚举类型

java - 获取枚举类型变量的注释

我有一些Enum的非null变量(例如en1)类型。问题是:如何获取en1变量引用的枚举常量相关的注解? 最佳答案 试试这个(java反射):Stringfield=En.AAA.name();En.class.getField(field).getAnnotations();它应该为您提供来自AAA的注释。编辑:正如作者所说:en1.getClass().getField(((Enum)en1).name()).getAnnotations();为他工作:) 关于java-获取枚举类型

java - 通用枚举到可迭代转换器

已结束。此问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。关闭7年前。ImprovethisquestionHttpServletRequest使用了大量的java.util.Enumeration。我想在for-each中使用它们,所以我需要将它们转换为可交互的。这不是问题,但是因为我有多个项目需要这个,所以我需要一个库来做到这一点。我宁愿不自己做——有没有支持这种装饰的标准库?是否有内置构造可以将Enumeration转换为Iterable?

java - 通用枚举到可迭代转换器

已结束。此问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提出有关书籍、工具、软件库等方面的建议的问题。您可以编辑问题,以便用事实和引用来回答它。关闭7年前。ImprovethisquestionHttpServletRequest使用了大量的java.util.Enumeration。我想在for-each中使用它们,所以我需要将它们转换为可交互的。这不是问题,但是因为我有多个项目需要这个,所以我需要一个库来做到这一点。我宁愿不自己做——有没有支持这种装饰的标准库?是否有内置构造可以将Enumeration转换为Iterable?

java - 如何启用枚举继承

我正在编写一个库,其中有一组预定义的枚举值。假设,我的枚举如下所示。publicenumEnumClass{FIRST("first"),SECOND("second"),THIRD("third");privateStringhttpMethodType;}现在使用这个库的客户可能需要添加更多的值。比方说,客户需要添加CUSTOM_FIRST和CUSTOM_SECOND.这不会覆盖任何现有值,而是使枚举具有5个值。在这之后,我应该可以使用之类的东西了。有5种恒定的可能性。实现这一目标的最佳方法是什么? 最佳答案 您不能让enum扩

java - 如何启用枚举继承

我正在编写一个库,其中有一组预定义的枚举值。假设,我的枚举如下所示。publicenumEnumClass{FIRST("first"),SECOND("second"),THIRD("third");privateStringhttpMethodType;}现在使用这个库的客户可能需要添加更多的值。比方说,客户需要添加CUSTOM_FIRST和CUSTOM_SECOND.这不会覆盖任何现有值,而是使枚举具有5个值。在这之后,我应该可以使用之类的东西了。有5种恒定的可能性。实现这一目标的最佳方法是什么? 最佳答案 您不能让enum扩

java - 如何在 JPA 中使用枚举

我有一个电影租赁系统的现有数据库。每部电影都有一个评级属性。在SQL中,他们使用约束来限制该属性的允许值。CONSTRAINTfilm_rating_checkCHECK((((((((rating)::text=''::text)OR((rating)::text='G'::text))OR((rating)::text='PG'::text))OR((rating)::text='PG-13'::text))OR((rating)::text='R'::text))OR((rating)::text='NC-17'::text)))我认为使用Java枚举将约束映射到对象世界会很好。